#pragma once


#include <SDL.h>


class SceneBase
{
public:
    SceneBase() = default;
    ~SceneBase() = default;

    /**
     * 初始化场景
     */
    virtual void init() = 0;

    /**
     * 逻辑更新
     */
    virtual void update(float deltaTime) = 0;

    /**
     * 渲染场景
     */
    virtual void render() = 0;

    /**
     * 清理场景资源
     */
    virtual void clean() = 0;

    /**
     * 处理事件
     */
    virtual void handleEvent(SDL_Event* event) = 0;
};